/*
#include <math.h>
#include <algorithm>
#include <string>
#include <map>
#include <hash_map>
#include <set>
#include <vector>
#include <iostream>
#include <sstream>
using namespace std;
string addBinary(string a, string b) {
	string result="";
	int more=0,tmp,x,y;
	char ch;
	if(b.length()>a.length())
		return addBinary(b,a);
	int i,k;
	for( i=b.length()-1,k=a.length()-1;i>=0;i--,k--){
		x=a[k]-'0';y=b[i]-'0';
		ch='0'+(x+y+more)%2;
		result=ch+result;
		more=(x+y+more)/2;
	}
	for(;k>=0;k--){
		x=a[k]-'0';
		ch=(x+more)%2+'0';
		result=ch+result;
		more=(x+more)/2;
	}
	if(more>0){
		ch=more+'0';
		result=ch+result;
	}
	return result;
}
int main(){
	string p;
	//8,2,4,4,4,9,5,2,5,8,8,0,8,6,9,1,1,6,3,5,1,2,6,6,0,4,8,6,0,3,2,8,7,6,5,1,7,0,3,4,8,3,5,9,0,4,0,1,0,5,9,2,0,7,0,2,1,0,8,2,5,1,2,3,9,7,4,7,0,0,1,8,5,6,7,5,1,9,9,3,5,0,7,5
	int a[]={9,9,9,9};
	vector<int>v1(a,a+sizeof(a)/sizeof(int));
	cout<<addBinary("11","1");
	cout<<endl;
	system("pause");
	return 0;
}
*/